<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content=
    "application/xhtml+xml; charset=utf-8" />
    <title>
      6.70.&nbsp;Vim-8.0.069
    </title>
    <link rel="stylesheet" type="text/css" href="../stylesheets/lfs.css" />
    <meta name="generator" content="DocBook XSL Stylesheets V1.78.1" />
    <link rel="stylesheet" href="../stylesheets/lfs-print.css" type=
    "text/css" media="print" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  </head>
  <body class="lfs" id="lfs-8.0">
    <div class="navheader">
      <h4>
        Linux From Scratch - Version 8.0
      </h4>
      <h3>
        第六章 安装基本系统软件
      </h3>
      <ul>
        <li class="prev">
          <a accesskey="p" href="texinfo.html" title="Texinfo-6.3">上一页</a>
          <p>
            Texinfo-6.3
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="aboutdebug.html" title=
          "关于调试标志">下一页</a>
          <p>
            关于调试标志
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="chapter06.html" title=
          "Chapter&nbsp;6.&nbsp;Installing Basic System Software">返回</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Linux From Scratch - Version 8.0 ">首页</a>
        </li>
      </ul>
    </div>
    <div class="wrap" lang="en" xml:lang="en">
      <h1 class="sect1">
        <a id="ch-system-vim" name="ch-system-vim"></a>6.70. Vim-8.0.069
      </h1>
      <div class="package" lang="en" xml:lang="en">
        <p>
          Vim 软件包包含一个强大的编辑器。
        </p>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">构建约需时间：</strong>
              <span class="segbody">1.3 SBU</span>
            </div>
            <div class="seg">
              <strong class="segtitle">需要磁盘空间：</strong>
              <span class="segbody">141 MB</span>
            </div>
          </div>
        </div>
        <div class="admon tip">
          <img alt="[Tip]" src="../images/tip.png" />
          <h3>
            Vim 的替代品
          </h3>
          <p>
            如果你喜欢其他编辑器——比如 Emacs, Joe, 或
            Nano —— 请查阅 <a class="ulink" href=
            "http://www.linuxfromscratch.org/blfs/view/8.0/postlfs/editors.html">
            http://www.linuxfromscratch.org/blfs/view/8.0/postlfs/editors.html</a>
            网页以获得建议的安装指导。
          </p>
        </div>
      </div>
      <div class="installation" lang="en" xml:lang="en">
        <h2 class="sect2">
          6.70.1. 安装 Vim
        </h2>
        <p>
          首先，将 <code class=
          "filename">vimrc</code> 配置文件的默认位置更改至 <code class=
          "filename">/etc</code>：
        </p>
        <pre class="userinput">
<kbd class=
"command">echo '#define SYS_VIMRC_FILE "/etc/vimrc"' &gt;&gt; src/feature.h</kbd>
</pre>
        <p>
          准备编译 Vim：
        </p>
        <pre class="userinput">
<kbd class="command">./configure --prefix=/usr</kbd>
</pre>
        <p>
          编译软件包：
        </p>
        <pre class="userinput">
<kbd class="command">make</kbd>
</pre>
        <p>
          用以下命令测试结果： 
        </p>
        <pre class="userinput">
<kbd class="command">make -j1 test</kbd>
</pre>
        <p>
          但这会在屏幕上输出大量二进制数据，这会导致目前终端的设置出现一些问题。可以通过重定向输出到一个日志文件来解决这个问题。测试成功的话会在编译时出现 "ALL DONE" 的结果。
        </p>
        <p>
          安装软件包：
        </p>
        <pre class="userinput">
<kbd class="command">make install</kbd>
</pre>
        <p>
          很多用户习惯使用 <span class=
          "command"><strong>vi</strong></span> 而不是 <span class=
          "command"><strong>vim</strong></span>。为了允许用户习惯性输入 <span class="command"><strong>vi</strong></span> 执行 <span class="command"><strong>vim</strong></span> ，为二进制文件和所提供语言的手册页创建一个符号链接：
        </p>
        <pre class="userinput">
<kbd class="command">ln -sv vim /usr/bin/vi
for L in  /usr/share/man/{,*/}man1/vim.1; do
    ln -sv vim.1 $(dirname $L)/vi.1
done</kbd>
</pre>
        <p>
          Vim 的文档默认安装在 <code class=
          "filename">/usr/share/vim</code>。下面的符号链接允许通过<code class=
          "filename">/usr/share/doc/vim-8.0.069</code>访问文档，使其与其他软件包的文档路径保持一致：
        </p>
        <pre class="userinput">
<kbd class="command">ln -sv ../vim/vim80/doc /usr/share/doc/vim-8.0.069</kbd>
</pre>
        <p>
          如果要在 LFS 系统上安装 X Window ，就有必要在安装完 X 之后重新编译 Vim 。含 GUI 的 Vim 版本需要 X 和一些额外安装的库。关于这一步骤的更多信息，查阅 Vim 文档和 BLFS 手册中的 Vim 安装页 <a class="ulink" href=
          "http://www.linuxfromscratch.org/blfs/view/8.0/postlfs/vim.html">http://www.linuxfromscratch.org/blfs/view/8.0/postlfs/vim.html</a>。
        </p>
      </div>
      <div class="configuration" lang="en" xml:lang="en">
        <h2 class="sect2">
          <a id="conf-vim" name="conf-vim"></a>6.70.2. 配置 Vim
        </h2>
        <p>
          <span class="command"><strong>vim</strong></span> 默认在 vi-incompatible （不兼容）模式下运行。使用过其他编辑器的用户可能不熟悉。使用在下面给出的 <span class=
          "quote">&ldquo;<span class=
          "quote">nocompatible</span>&rdquo;</span> 设置来高亮所使用的新特性。这也提醒那些想切换到 <span class=
          "quote">&ldquo;<span class="quote">compatible（兼容）</span>&rdquo;</span> 模式的用户，这应该是配置文件中要更改的第一个设置。
          这很重要，因为这个设置会更改其他设置，并且覆写应在此设置之后。通过运行以下命令创建默认的 <span class=
          "command"><strong>vim</strong></span> 配置文件：
        </p>
        <pre class="userinput">
<kbd class="command">cat &gt; /etc/vimrc &lt;&lt; "EOF"
<code class="literal">" Begin /etc/vimrc

set nocompatible
set backspace=2
set mouse=r
syntax on
if (&amp;term == "xterm") || (&amp;term == "putty")
  set background=dark
endif


" End /etc/vimrc</code>
EOF</kbd>
</pre>
        <p>
          <em class="parameter"><code>set nocompatible</code></em> 设置使 <span class="command"><strong>vim</strong></span> 比 vi 兼容模式更有用。移除 <span class="quote">&ldquo;<span class=
          "quote">no</span>&rdquo;</span> 来保留 <span class=
          "command"><strong>vi</strong></span> 模式。 <em class="parameter"><code>set backspace=2</code></em> 设置允许在换行符，自动缩进和插入前退格。<em class="parameter"><code>syntax on</code></em> 参数能开启 vim 的语法高亮。<em class=
          "parameter"><code>set mouse=r</code></em> 设置使 chroot 或通过远程连接工作时，可以使用鼠标粘贴文本。最后， <span class=
          "emphasis"><em>if</em></span> 语句和 <em class=
          "parameter"><code>set background=dark</code></em> 设置修正 <span class="command"><strong>vim</strong></span> 对某些终端模拟器的背景色的估算。</p>
        <p>
          其它选项的文档可以通过运行以下命令得到：
        </p>
        <pre class="userinput">
<kbd class="command">vim -c ':options'</kbd>
</pre>
        <div class="admon note">
          <img alt="[Note]" src="../images/note.png" />
          <h3>
            注意
          </h3>
          <p>
            Vim 默认仅安装英语的拼写文件。若要安装你所要语言拼写，从 <a class="ulink" href=
            "ftp://ftp.vim.org/pub/vim/runtime/spell/">ftp://ftp.vim.org/pub/vim/runtime/spell/</a> 下载所需的语言和字符编码 <code class="filename">*.spl</code> 文件，可选下载 <code class="filename">*.sug</code> 文件并保存到 <code class=
            "filename">/usr/share/vim/vim80/spell/</code>。
          </p>
          <p>
            若要使用这些拼写文件，需要对 <code class=
            "filename">/etc/vimrc</code> 进行一些配置，例如：
          </p>
          <pre class="screen">
<code class="literal">set spelllang=en,ru
set spell</code>
</pre>
          <p>
            需要更多信息，请在上方网址查阅合适的 README 文件。
          </p>
        </div>
      </div>
      <div class="content" lang="en" xml:lang="en">
        <h2 class="sect2">
          <a id="contents-vim" name="contents-vim"></a>6.70.3. Vim 的内容
        </h2>
        <div class="segmentedlist">
          <div class="seglistitem">
            <div class="seg">
              <strong class="segtitle">安装的程序：</strong>
              <span class="segbody">ex (link to vim), rview (link to vim),
              rvim (link to vim), vi (link to vim), view (link to vim), vim,
              vimdiff (link to vim), vimtutor, and xxd</span>
            </div>
            <div class="seg">
              <strong class="segtitle">安装目录：</strong>
              <span class="segbody">/usr/share/vim</span>
            </div>
          </div>
        </div>
        <div class="variablelist">
          <h3>
            简要描述 
          </h3>
          <table border="0" class="variablelist">
            <colgroup>
              <col align="left" valign="top" />
              <col />
            </colgroup>
            <tbody>
              <tr>
                <td>
                  <p>
                    <a id="ex" name="ex"></a><span class="term"><span class=
                    "command"><strong>ex</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    以 ex 模式启动 <span class="command"><strong>vim</strong></span>
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="rview" name="rview"></a><span class=
                    "term"><span class=
                    "command"><strong>rview</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    <span class=
                    "command"><strong>view</strong></span> 参的限制版；不能启动 shell 命令并且 <span class=
                    "command"><strong>view</strong></span> 不能被暂停
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="rvim" name="rvim"></a><span class=
                    "term"><span class=
                    "command"><strong>rvim</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    <span class=
                    "command"><strong>view</strong></span> 参的限制版；不能启动 shell 命令并且 <span class=
                    "command"><strong>view</strong></span> 不能被暂停
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="vi" name="vi"></a><span class="term"><span class=
                    "command"><strong>vi</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    链接到 <span class="command"><strong>vim</strong></span>
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="view" name="view"></a><span class=
                    "term"><span class=
                    "command"><strong>view</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    以只读方式启动 <span class="command"><strong>vim</strong></span>
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="vim" name="vim"></a><span class=
                    "term"><span class="command"><strong>vim</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    编辑器本体
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="vimdiff" name="vimdiff"></a><span class=
                    "term"><span class=
                    "command"><strong>vimdiff</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    使用 <span class=
                    "command"><strong>vim</strong></span> 编辑一份文件的两三个版本并显示不同
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="vimtutor" name="vimtutor"></a><span class=
                    "term"><span class=
                    "command"><strong>vimtutor</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    教授 <span class=
                    "command"><strong>vim</strong></span> 的基本按键和命令
                  </p>
                </td>
              </tr>
              <tr>
                <td>
                  <p>
                    <a id="xxd" name="xxd"></a><span class=
                    "term"><span class="command"><strong>xxd</strong></span></span>
                  </p>
                </td>
                <td>
                  <p>
                    创建给定文件的十六进制转储；也可以进行还原操作，所以可以被用作二进制文件补丁
                  </p>
                </td>
              </tr>
            </tbody>
          </table>
        </div>
      </div>
    </div>
    <div class="navfooter">
      <ul>
        <li class="prev">
          <a accesskey="p" href="texinfo.html" title="Texinfo-6.3">上一页</a>
          <p>
            Texinfo-6.3
          </p>
        </li>
        <li class="next">
          <a accesskey="n" href="aboutdebug.html" title=
          "关于调试标志">下一页</a>
          <p>
            关于调试标志
          </p>
        </li>
        <li class="up">
          <a accesskey="u" href="chapter06.html" title=
          "第六章 安装基本系统软件">返回</a>
        </li>
        <li class="home">
          <a accesskey="h" href="../index.html" title=
          "Linux From Scratch - Version 8.0 ">首页</a>
        </li>
      </ul>
    </div>
  </body>
</html>
